#include <REGX52.H>  // 包含8051系列单片机（如AT89C52）的特殊功能寄存器（SFR）头文件。
                      // 这个文件定义了P0、P1、P2、P3等端口的地址，以及定时器、串口等硬件资源的名称。
                      // 没有它，编译器就不认识 P2 是什么。

void main()           // 主函数，所有C语言程序的入口点。单片机上电复位后，就会从这里开始执行。
{
    P2 = 0xFE;        // 给P2端口赋值。0xFE是十六进制数，转换成二进制是 1111 1110。
                      // 在单片机中，P2是一个8位的并行I/O口，每一位都对应一个物理引脚。
                      // 写入0xFE意味着：
                      // - P2.0引脚输出低电平 (0)
                      // - P2.1到P2.7引脚输出高电平 (1)
                      // 如果P2.0引脚上连接了一个LED灯（通常另一端通过电阻接VCC），那么此时LED灯就会被点亮。

    while(1)          // 进入一个无限循环。
                      // 单片机程序不像PC程序有操作系统可以退出，主程序必须永远运行下去。
                      // while(1) 的作用就是让单片机在执行完 P2=0xFE; 后，停留在这个循环里，防止程序跑飞。
    {
        // 循环体是空的，单片机会在这里空转，一直保持P2端口的状态不变。
    }
}
